send and receive msgs thru telegram API

James Peret 7 years ago
parent
commit
5cd80ba9f3
2 changed files with 19 additions and 12 deletions
  1. 1 1
      package.json
  2. 18 11
      src/multi-adapter.coffee

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
1 1
 {
2 2
   "name": "hubot-multi-adapter",
3
-  "version": "0.1.11",
3
+  "version": "0.1.12",
4 4
   "description": "A Hubot adapter that can receive messages thru socket.io or telegram",
5 5
   "main": "src/multi-adapter",
6 6
   "scripts": {

+ 18 - 11
src/multi-adapter.coffee

@@ -28,11 +28,16 @@ class MultiAdapter extends Adapter
28 28
     super @robot
29 29
 
30 30
   send: (user, strings...) ->
31
-    socket = @sockets[user.room]
32
-    console.log("Sending response to user " + user.name + ":")
33
-    console.log(str for str in strings)
34
-    for str in strings
35
-      socket.emit 'message', str
31
+    if user.service == "telegram"
32
+      chatId = user.room;
33
+      for str in strings
34
+        telegramBot.sendMessage(chatId, str);
35
+    else
36
+      socket = @sockets[user.room]
37
+      console.log("Sending response to user " + user.name + ":")
38
+      console.log(str for str in strings)
39
+      for str in strings
40
+        socket.emit 'message', str
36 41
 
37 42
   reply: (user, strings...) ->
38 43
     socket = @sockets[user.room]
@@ -50,6 +55,7 @@ class MultiAdapter extends Adapter
50 55
         console.log("Message Received from user " + data.username + ":" )
51 56
         console.log(data.message)
52 57
         user.name = data.username
58
+        user.service = "socket"
53 59
         @receive new TextMessage user, data.message
54 60
 
55 61
       socket.on 'disconnect', =>
@@ -58,12 +64,13 @@ class MultiAdapter extends Adapter
58 64
         delete @sockets[socket.id]
59 65
 
60 66
     app.post '/telegram-api', (req, res) =>
61
-      console.log(req.body)
62
-      #user = @userForId req.body.message.chat.id, name: req.body.message.chat.name, room: req.body.message.chat.id
63
-      #console.log("Message Received from user " + req.body.message.chat.username + ":" )
64
-      #console.log(req.body.message.chat.content)
65
-      #user.name = data.username
66
-      #@receive new TextMessage user, req.body.message.chat.content
67
+      @robot.brain.set 'log_id_' + req.body.message.chat.id, new Date().getUTCMilliseconds();
68
+      user = @userForId req.body.message.chat.id, name: req.body.message.chat.username, room: req.body.message.chat.id
69
+      console.log("Message Received from user " + req.body.message.chat.username + ":" )
70
+      console.log(req.body.message.text)
71
+      user.name = req.body.message.chat.username
72
+      user.service = "telegram"
73
+      @receive new TextMessage user, req.body.message.text
67 74
       res.end()
68 75
 
69 76
     @emit 'connected'